In the modern telecommunication network a myriad of services and functions are offered both as conveniences to the end users and as necessities for running the network. These services require complex programming, representing thousands upon thousands lines of code. When a new service is required, programmers typically must start from scratch, writing many more lines of code.
In traditional interpreted computer languages, a program is interpreted one line at a time upon execution. Depending on the length of the program, the complexity of the programming language and the ability of the interpreter, execution can be a time consuming process.
What is needed is an architecture that provides a programmable software environment that allows fast implementation of new call processing services that are executed as fast and efficiently as possible.